/* Yet Another Experimental Software Renderer
 *
 * Copyright (c) 2010 Pawel "Hery" Dziepak
 */

#ifndef PRIMITIVES_H_
#define PRIMITIVES_H_

#include "vectors.h"

namespace yaesr {
	enum primitive_type {
		point_list,
		line_strip,
		triangle_strip
	};

	struct vertex {
		vec4 position;
		vec4 normal;
		color color0;
		vec2 texcoord0;
	};

	typedef vertex texel;

	struct point {
		vertex vert;
	};

	struct line {
		vertex vert0, vert1;
	};

	struct triangle {
		vertex vert0, vert1, vert2;
	};
}

#endif